With increasing connectivity between users and digital service providers afforded by the proliferation of computer networks and user devices, there is an increasing need to collect user event data to support system diagnostics, audience measurement, user experience personalization, and targeted advertising. User event data may include clickstream events such as channel change clicks and other button activations executed on controllers associated with devices such as televisions, set-top boxes, digital video recorders, personal video recorders, and game consoles. User events may also be logged from input devices such as keyboards, mice, touch pads, cameras, and microphones associated with, for example, computers, smart phones, personal digital assistants, tablet computers, and kiosks. Such data collection can be problematic in cable TV, satellite TV, and other networks where bandwidth and memory are scarce, a large number of customers exist, event resolution is high, and/or the volume of event data is significant.
Some existing arts log, store, and transmit all raw clickstream events. This can pose a significant load on limited memory and bandwidth resources, especially if event frequency and resolution are high.
Other arts encode user events in XML or other non-compact data representations, which may increase memory and bandwidth requirements even further.
Other arts ignore or drop certain data sequences to save memory and bandwidth resulting in incomplete or ambiguous data being delivered to receiving devices.
Other arts reduce user event data using standard compression algorithms, which may be costly for user devices in terms of processing time and memory needed to support algorithm operation.
Other arts may attempt to reduce data in other ways, such as by compressing channel-number/time-code data associated with a program and transmitting it in the vertical blanking interval of the program broadcast. Such methods do not take advantage of sequences of user events for additional data reduction and do not provide sufficient time resolution for channel-tuning events.
The current arts have yet to provide ways to reduce the volume of user event data in a way that is computationally tractable, effective, unambiguous, and adequately reversible.